package org.dromara.oce.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.oce.domain.OceAdvertiserDataAnalysis;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;


/**
 * 【请填写功能名称】视图对象 oce_advertiser_data_analysis
 *
 * @author Lion Li
 * @date 2025-05-26
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = OceAdvertiserDataAnalysis.class)
public class OceAdvertiserDataAnalysisVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 广告主每日数据分析记录id
     */
    @ExcelProperty(value = "广告主每日数据分析记录id")
    private Long advertiserAnalysisId;

    /**
     * 推广链接id
     */
    @ExcelProperty(value = "推广链接id")
    private Long referralLinkId;

    /**
     * 推广链接类型：1-袋鼠；2-番茄；3-点众；4-番茄IAA；5-袋鼠IAA；6-端原生IAP；7-端原生IAA；
     */
    @ExcelProperty(value = "推广链接类型：1-袋鼠；2-番茄；3-点众；4-番茄IAA；5-袋鼠IAA；6-端原生IAP；7-端原生IAA；")
    private Integer referralLinkType;

    /**
     * 巨量应用平台编码
     */
    @ExcelProperty(value = "巨量应用平台编码")
    private String thirdAdvertiserAppCode;

    /**
     * 第三方广告主id
     */
    @ExcelProperty(value = "第三方广告主id")
    private String thirdAdvertiserId;

    /**
     * 第三方广告主名称
     */
    @ExcelProperty(value = "第三方广告主名称")
    private String thirdAdvertiserName;

    /**
     * 当日时间戳
     */
    @ExcelProperty(value = "当日时间戳")
    private Long thatdayTimestamp;

    /**
     * 当日日期
     */
    @ExcelProperty(value = "当日日期")
    private String thatdayDate;

    /**
     * 短剧名称
     */
    @ExcelProperty(value = "短剧名称")
    private String dramaTitle;

    /**
     * 维度编码
     */
    @ExcelProperty(value = "维度编码")
    private String dimensionsType;

    /**
     * 维度名称
     */
    @ExcelProperty(value = "维度名称")
    private String dimensionsName;

    /**
     * 总消耗
     */
    @ExcelProperty(value = "总消耗")
    private BigDecimal statCost;

    /**
     * 展示数
     */
    @ExcelProperty(value = "展示数")
    private Integer showCnt;

    /**
     * 平均千次展现费用=总花费/展示数*1000
     */
    @ExcelProperty(value = "平均千次展现费用=总花费/展示数*1000")
    private BigDecimal cpmPlatform;

    /**
     * 点击数
     */
    @ExcelProperty(value = "点击数")
    private Integer clickCnt;

    /**
     * 平均点击单价=总花费/点击数
     */
    @ExcelProperty(value = "平均点击单价=总花费/点击数")
    private BigDecimal cpcPlatform;

    /**
     * 点击率=点击数/展示数*100%
     */
    @ExcelProperty(value = "点击率=点击数/展示数*100%")
    private Integer ctr;

    /**
     * 转化数=付费数*回传率
     */
    @ExcelProperty(value = "转化数=付费数*回传率")
    private BigDecimal convertCnt;

    /**
     * 转化成本
     */
    @ExcelProperty(value = "转化成本")
    private BigDecimal conversionCost;

    /**
     * 转化率=转化数/点击数*100%
     */
    @ExcelProperty(value = "转化率=转化数/点击数*100%")
    private BigDecimal conversionRate;

//    /**
//     * 激活数
//     */
//    @ExcelProperty(value = "激活数")
//    private Long active;
//
//    /**
//     * 激活成本=总消耗/激活数
//     */
//    @ExcelProperty(value = "激活成本=总消耗/激活数")
//    private Long activeCost;
//
//    /**
//     * 激活率=激活数/点击数*100%
//     */
//    @ExcelProperty(value = "激活率=激活数/点击数*100%")
//    private Long activeRate;
//
//    /**
//     * 首次付费数
//     */
//    @ExcelProperty(value = "首次付费数")
//    private Long activePay;
//
//    /**
//     * 首次付费成本=消耗/付费次数
//     */
//    @ExcelProperty(value = "首次付费成本=消耗/付费次数")
//    private Long activePayCost;
//
//    /**
//     * 首次付费率=首次付费数/激活数
//     */
//    @ExcelProperty(value = "首次付费率=首次付费数/激活数")
//    private Long activePayRate;
//
//    /**
//     * 付费次数
//     */
//    @ExcelProperty(value = "付费次数")
//    private Long gamePayCount;
//
//    /**
//     * 付费成本=消耗/付费次数
//     */
//    @ExcelProperty(value = "付费成本=消耗/付费次数")
//    private Long gamePayCost;

    /**
     * 投手名称
     */
    @ExcelProperty(value = "投手名称")
    private String createName;


}
